package com.cfkj.common.dao;

import org.apache.ibatis.annotations.Param;

import java.util.List;

/*
*   公共的Dao
* */
public interface AbstractDao<T> {
    /*添加*/
    void insert(T t) throws Exception;
    /*更新*/
    void update(T t) throws Exception;
    /*
    删除
    field:字段
    value:数值
    */
    void delete(@Param("key")String field, @Param("value")Object value) throws Exception;
    /*
    * 查找
    *  field:字段
    *  value:数值
    * */
    T select(@Param("key")String field, @Param("value")Object value) throws Exception;
    /*
    * 查询是否存在
     *  field:字段
     *  value:数值
    * */
    boolean exists(@Param("key")String field, @Param("value")Object value) throws Exception;
    /*
    * 模糊查询
    * key :
    * */
    List<T> selectLike(@Param("key")String key) throws Exception;
}
